Cellular telephones have steadily advanced in terms of processor power and associated resources such as memory. Cellular telephones have correspondingly moved from primitive user interfaces and operating systems to more advanced software. Along the way, this has resulted in enhanced capabilities of cellular telephones, such as playing media in various forms.
Media players are now available for cellular telephones, allowing for display of videos, viewing of still pictures, and broadcasting of audio. However, the data encoding media can be encoded in a bewildering array of different formats. Codecs are used for such operations. Codecs are generally software modules which can encode data from a raw format into a generally compressed format, and then can decode such data to allow for processing of the raw data when it is used. However, as codecs perform compression (mainly), the options for implementing codecs are as limitless as the options for compression. Considerations such as encoded data size (space efficiency), time to encode data (time efficiency), and data integrity (lossiness—many compression algorithms lose some data) all come into play when selecting a method for encoding (and decoding) data, and a corresponding codec.
Users are, understandably, not terribly interested in such details. A typical user of a cellular telephone may have no idea of what codecs are available on the phone. The user wants the result, whether that result is being able to display a picture, view a video, or play a popular sound as a ringtone. Thus, it may be useful to provide a system and method allowing for use of local codecs on a cellular telephone, rather than requiring a designated codec to exist on the cellular telephone to play multimedia content.
While playing this content, whether video or still pictures, the cellular phone may be used for its original purpose—a call may arrive. Other interrupts may also occur, such as an SMS message arriving or voicemail notification occurring. Additional interrupt events may also be understood. Thus, it may be useful to be able to halt playing of media and to later resume playing of media. For some users, involved with playing games through a media player, being able to suspend the game rather than lose progress may be considered particularly important.